package lang;
// 静态导入
import static java.lang.Math.PI;

public class MathTest {
    public static void main(String[] args) {
        System.out.println(PI);
        implicitConversion();
    }

    // Java 不能隐式执行向下转型，因为这会使得精度降低。
    private static void implicitConversion(){
        // 字面量3.14是double类型的, 不能隐式转换为float
//        float f = 3.14;
        // 显示
        float f = (float) 3.14;
        float f2 = 3.14f;

        // 精度超出范围, s0 溢出
//        short s0 = Short.MAX_VALUE + 1;
//        short s0 = 32768;
        short s = 1;
        short s1 = 1;
        // s = s + 1;
        System.out.println(s);
        s += 1;
        System.out.println(s);
        s++;
        System.out.println(s);
        // 上面的语句相当于将 s1 + 1 的计算结果进行了向下转型：
        s1 = (short) (s1 + 1);
        System.out.println(s1);
    }

}
